package com.yidu.ladder.base.dao;

import java.util.List;
import java.util.Map;

import com.yidu.ladder.base.domain.Bus;
import com.yidu.ladder.base.domain.BusVo;
import com.yidu.ladder.base.domain.Subset;

/**
 * 班车数据访问接口类
 * 
 * @author yy
 * @since 2019-12-2
 *
 */
public interface BusDao {

	/**
	 * 查询所有班车
	 * 
	 * @return
	 */
	public List<Bus> findAllBus();

	/**
	 * 分页查询所有班车
	 * 
	 * @param busVo 班车包装
	 * @return
	 */
	public List<BusVo> queryBusByCriteriaWithPage(BusVo busVo);

	/**
	 * 计算班车数量
	 * 
	 * @param busVo 班车包装
	 * @return
	 */
	public int countBusByCriteria(BusVo busVo);

	/**
	 * 添加班车
	 * 
	 * @param bus 班车
	 * @return
	 */
	public int addBus(Bus bus);

	/**
	 * 修改班车
	 * 
	 * @param Bus 班车
	 * @return
	 */
	public int updateBus(Bus bus);

	/**
	 * 冻结或还原班车
	 * 
	 * @param map
	 * @return
	 */
	public int frozenOrRecoveBus(Map<String, Object> map);

	/**
	 * 给下拉框赋值
	 * 
	 * @return
	 */
	public List<Subset> selectAllBus();
}
